package me.jessyan.armscomponent.app.di.component;

import com.jess.arms.di.component.AppComponent;
import com.jess.arms.di.scope.FragmentScope;

import dagger.BindsInstance;
import dagger.Component;
import me.jessyan.armscomponent.app.di.module.DonationHomeModule;
import me.jessyan.armscomponent.app.mvp.contract.DonationHomeContract;
import me.jessyan.armscomponent.app.mvp.ui.fragment.DonationHomeFragment;


/**
 * <p>
 * Author: Taozebi
 * Date: 08/08/2021 18:01
 * Description: describe of this class
 */
@FragmentScope
@Component(modules = DonationHomeModule.class, dependencies = AppComponent.class)
public interface DonationHomeComponent {
    void inject(DonationHomeFragment fragment);

    @Component.Builder
    interface Builder {
        @BindsInstance
        DonationHomeComponent.Builder view(DonationHomeContract.View view);

        DonationHomeComponent.Builder appComponent(AppComponent appComponent);

        DonationHomeComponent build();
    }
}